package com.base.logistics.jdl.bean.print;

import java.io.Serializable;

/**
 * <pre>
 * ISV自定义模板以及自定义项
 * </pre>
 * @since 2021-02-26
 */
public class IsvResourceDo  implements Serializable {

    /**
     * 资源内容（当资源类型为TEMPLATE时，为空）
     */
    private String resourceContent;

    /**
     * 资源id
     */
    private Integer resourceId;

    /**
     * 资源名称
     */
    private String resourceName;

    /**
     * 资源类型 TEMPLATE（表示模板），PRINT_ITEM（打印项），CUSTOM_AREA（预设自定义区）
     */
    private String resourceType;

    /**
     * 资源url（当资源类型为打印项时，为空）
     */
    private String resourceUrl;

    public IsvResourceDo() {
    }

    public String getResourceContent() {
        return this.resourceContent;
    }

    public Integer getResourceId() {
        return this.resourceId;
    }

    public String getResourceName() {
        return this.resourceName;
    }

    public String getResourceType() {
        return this.resourceType;
    }

    public String getResourceUrl() {
        return this.resourceUrl;
    }

    public void setResourceContent(String resourceContent) {
        this.resourceContent = resourceContent;
    }

    public void setResourceId(Integer resourceId) {
        this.resourceId = resourceId;
    }

    public void setResourceName(String resourceName) {
        this.resourceName = resourceName;
    }

    public void setResourceType(String resourceType) {
        this.resourceType = resourceType;
    }

    public void setResourceUrl(String resourceUrl) {
        this.resourceUrl = resourceUrl;
    }

    public boolean equals(final Object o) {
        if (o == this) return true;
        if (!(o instanceof IsvResourceDo)) return false;
        final IsvResourceDo other = (IsvResourceDo) o;
        if (!other.canEqual((Object) this)) return false;
        final Object this$resourceContent = this.getResourceContent();
        final Object other$resourceContent = other.getResourceContent();
        if (this$resourceContent == null ? other$resourceContent != null : !this$resourceContent.equals(other$resourceContent))
            return false;
        final Object this$resourceId = this.getResourceId();
        final Object other$resourceId = other.getResourceId();
        if (this$resourceId == null ? other$resourceId != null : !this$resourceId.equals(other$resourceId))
            return false;
        final Object this$resourceName = this.getResourceName();
        final Object other$resourceName = other.getResourceName();
        if (this$resourceName == null ? other$resourceName != null : !this$resourceName.equals(other$resourceName))
            return false;
        final Object this$resourceType = this.getResourceType();
        final Object other$resourceType = other.getResourceType();
        if (this$resourceType == null ? other$resourceType != null : !this$resourceType.equals(other$resourceType))
            return false;
        final Object this$resourceUrl = this.getResourceUrl();
        final Object other$resourceUrl = other.getResourceUrl();
        if (this$resourceUrl == null ? other$resourceUrl != null : !this$resourceUrl.equals(other$resourceUrl))
            return false;
        return true;
    }

    protected boolean canEqual(final Object other) {
        return other instanceof IsvResourceDo;
    }

    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $resourceContent = this.getResourceContent();
        result = result * PRIME + ($resourceContent == null ? 43 : $resourceContent.hashCode());
        final Object $resourceId = this.getResourceId();
        result = result * PRIME + ($resourceId == null ? 43 : $resourceId.hashCode());
        final Object $resourceName = this.getResourceName();
        result = result * PRIME + ($resourceName == null ? 43 : $resourceName.hashCode());
        final Object $resourceType = this.getResourceType();
        result = result * PRIME + ($resourceType == null ? 43 : $resourceType.hashCode());
        final Object $resourceUrl = this.getResourceUrl();
        result = result * PRIME + ($resourceUrl == null ? 43 : $resourceUrl.hashCode());
        return result;
    }

    public String toString() {
        return "IsvResourceDo(resourceContent=" + this.getResourceContent() + ", resourceId=" + this.getResourceId() + ", resourceName=" + this.getResourceName() + ", resourceType=" + this.getResourceType() + ", resourceUrl=" + this.getResourceUrl() + ")";
    }
}
